home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / var / lib / apt-xapian-index / README < prev    next >
Text File  |  2009-10-28  |  3KB  |  93 lines

  1. ===============
  2. Database layout
  3. ===============
  4.  
  5. This Xapian database indexes Debian package information.  To query the
  6. database, open it as ``/var/lib/apt-xapian-index/index``.
  7.  
  8. Data are indexed either as terms or as values.  Words found in package
  9. descriptions are indexed lowercase, and all other kinds of terms have an
  10. uppercase prefix as documented below.
  11.  
  12. Numbers are indexed as Xapian numeric values.  A list of the meaning of the
  13. numeric values is found in ``/var/lib/apt-xapian-index/values``.
  14.  
  15. The data sources used for indexing are:
  16.  
  17.  * Apt tags: Debtags tag information from the Packages file
  18.  * Package descriptions: terms extracted from the package descriptions using Xapian's TermGenerator
  19.  * Package sections: Debian package sections
  20.  * Sizes: package sizes indexed as values
  21.  
  22. This Xapian index follows the conventions for term prefixes described in
  23. ``/usr/share/doc/xapian-omega/termprefixes.txt.gz``.
  24.  
  25. Extra Debian data sources can define more extended prefixes (starting with
  26. ``X``): their meaning is documented below together with the rest of the data
  27. source documentation.
  28.  
  29. At the very least, at least the package name (with the ``XP`` prefix) will
  30. be present in every document in the database.  This allows to quickly
  31. lookup a Xapian document by package name.
  32.  
  33. The user data associated to a Xapian document is the package name.
  34.  
  35.  
  36. -------------------
  37. Active data sources
  38. -------------------
  39.  
  40.  
  41. Apt tags
  42. ========
  43.  
  44. The Apt tags data source indexes Debtags tags as found in the
  45. Packages file as terms with the ``XT`` prefix; for example:
  46. 'XTrole::program'.
  47.  
  48. Using the ``XT`` terms, queries can be enhanced with semantic
  49. information.  Xapian's support for complex expressions in queries
  50. can be used to great effect: for example::
  51.  
  52.     XTrole::program AND XTuse::gameplaying AND (XTinterface::x11 OR XTinterface::3d)
  53.  
  54. ``XT`` terms can also be used to improve the quality of search
  55. results.  For example, the ``gimp`` package would not usually show
  56. up when searching the terms ``image editor``.  This can be solved
  57. using the following technique:
  58.  
  59.  1. Perform a normal query
  60.  2. Put the first 5 or so results in an Rset
  61.  3. Call Enquire::get_eset using the Rset and an expand filter that
  62.     only accepts ``XT`` terms.  This gives you the tags that are
  63.     most relevant to the query.
  64.  4. Add the resulting terms to the initial query, and search again.
  65.  
  66. The Apt tags data source will not work when Debtags is installed,
  67. as Debtags is able to provide a better set of tags.
  68.  
  69.  
  70. Package descriptions
  71. ====================
  72.  
  73. The Descriptions data source simply uses Xapian's TermGenerator to
  74. tokenise and index the package descriptions.
  75.  
  76. Currently this creates normal terms as well as stemmed terms
  77. prefixed with ``Z``.
  78.  
  79.  
  80. Package sections
  81. ================
  82.  
  83. The section is indexed literally, with the prefix XS.
  84.  
  85.  
  86. Sizes
  87. =====
  88.  
  89. The Sizes data source indexes the package size and the installed
  90. size as the ``packagesize`` and ``installedsize`` Xapian values.
  91.  
  92.  
  93.